A network typically corresponds to a group of nodes, a connection medium, and connecting devices. A node may correspond to any type of computing device, such as a server, laptop computer, desktop computer, printer, copier, etc. The connection medium corresponds to the wires or the wireless mechanisms for connecting the nodes. The connecting devices are the devices which allow two or more nodes to communicate. Using the interconnection, nodes communicate to provide greater functionality to the users. The connecting devices may correspond to a router, hub, concentrator, switch, or any other such device.
In an information transmission network, consisting of at least two nodes, a connection medium, and at least one connecting device, a switch is a connecting device that filters and forwards packets between local area network (LAN) segments. Often a switch is referred to as a packet switch, according to some dictionaries, in order to refer specifically to networking and the fact that the switch itself often decides where and how to send the packets. Further, a switch may be connected to another connecting device and/or to one or more nodes.
A switch typically includes ports, memory, and a processing mechanism. Each segment that is connected to the switch is connected to a port on the switch. The segment may include one or more nodes connected via the connection medium and connecting devices to the switch. In order to provide greater throughput and performance, a switch must typically perform several operations.
For example, one such operation involves populating a table of nodes and segments. Specifically, the switch typically uses a table in memory to maintain the correspondence between nodes and the segment to which the nodes are connected. In order to automatically populate the table, the switch may perform a learning algorithm whereby the switch may receive a message for a receiving node from a sending node on a segment and broadcast the message. When a response is received from the receiving node, then the switch adds the information of the receiving node to the table. The switch may depopulate the table based on an aging algorithm whereby the oldest additions to the table are deleted.
Another example of an operation performed by a switch is in learning the best routes to a node. Specifically, networks typically use redundancy in order to ensure a single point of failure does not exist. Accordingly, networks may be composed of thousands of switches and segments. In order to ensure that the network is not flooded with messages, the switch may use a cooperative process to determine the best route to a particular node. As part of the cooperative process, switches may use a weight function associated with bandwidth and segments. The weight function may be derived from the switch or inputted into the switch as part of the configuration settings.
In general, operations performed by the switch (e.g., maintaining the table, determining the best route to node, etc.) are adjusted by administrators modifying configuration parameters, such as age of records in the table, weight functions, port settings, etc. of the switch. Specifically, in order to ensure that the network is functioning properly, the switches must be configured, tested, and often reconfigured. Configuring and testing each switch typically requires an administrator accessing each switch in the network through a command line interface, opening a configuration file of the switch, or manually walking to each switch and turn on an off toggle buttons on the switch. Accordingly, when multiple switches must be configured and tested, each command for each switch is typically performed separately.